package com.dhcc.sds.busi.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import com.dhcc.core.framework.base.entity.BaseEntity;
import com.dhcc.sds.base.entity.SdsQcentityEntity;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;


/**
 * 病种入组病例
 * 
 * @ClassName: SdsQcincaseEntity
 * @Description: TODO
 * @author sunyingjie
 * @date 2021-03-22 10:09:15
 */
@TableName("t_sds_bs_qcmrlist")
public class SdsQcincaseEntity extends BaseEntity<SdsQcincaseEntity> {
	private static final long serialVersionUID = 1L;
	
	//就诊ID
	private Long episodeId;
	//病种指针
	private Long entityId;
	//病种版本
	private Long entityVerId;	
	//入单人ID
	private Long inUserId;
	//入单科室ID
	private Long inLocId;
	//入单病区ID
	private Long inWardId;
	//入单日期
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date inDate;	
	//入单时间
	@DateTimeFormat(pattern = "HH:mm:ss")
	private Date inTime;
	//出单人ID
	private Long outDocId;
	//出单日期
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date outDate;	
	//出单时间
	@DateTimeFormat(pattern = "HH:mm:ss")
	private Date outTime;
	//当前状态
	private String state;
	//关联路径记录
	private String relativeCpId;
	//病种
	@TableField(exist = false)
	private List<SdsQcentityEntity> sdsQcentityEntities;
	//病案号
	@TableField(exist = false)
	private String mrNum;
	//患者姓名
	@TableField(exist = false)
	private String name;
	//入院日期
	@TableField(exist = false)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date admDate;
	//出院日期
	@TableField(exist = false)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date dishDate;
	//编目日期
	@TableField(exist = false)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date codeDate;
	//入组状态
	private String groupStatus;
	//填报状态
	private String fillingStatus;
	//上报状态
	private String reportStatus;
	//测试标识
	private Integer testFlg;
	//入组状态
	@TableField(exist = false)
	private String groupStatusDesc;
	//填报状态
	@TableField(exist = false)
	private String fillingStatusDesc;
	//上报状态
	@TableField(exist = false)
	private String reportStatusDesc;
	//整体流程填报状态
	@TableField(exist = false)
	private String stateDesc;
	//科室
	@TableField(exist = false)
	private String admLocDesc;
	//主管医师
	@TableField(exist = false)
	private String admDoctorName;
	// 迟报天数
	@TableField(exist = false)
	private Integer reportDelayDays;
	// 依据原因
	@TableField(exist = false)
	private String reason;
	//已填数量
	private Integer eCount;
	//自动采集数量
	private Integer aCount;
	//未填数量
	private Integer nCount;
	// 入组时机
	private String intheMoment;
	// 上传前置机时间
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date reportDate;
	// 国家平台上传状态
	private Integer reportState;
	// 国家平台上传返回信息
	private String reportMsg;
	// 病种名称
	@TableField(exist = false)
	private String entityName;


	/**
	 * 设置：就诊ID
	 */
	public void setEpisodeId(Long episodeId) {
		this.episodeId = episodeId;
	}
	/**
	 * 获取：就诊ID
	 */
	public Long getEpisodeId() {
		return episodeId;
	}
	/**
	 * 设置：病种指针
	 */
	public void setEntityId(Long entityId) {
		this.entityId = entityId;
	}
	/**
	 * 获取：病种指针
	 */
	public Long getEntityId() {
		return entityId;
	}
	/**
	 * 设置：病种版本
	 */
	public void setEntityVerId(Long entityVerId) {
		this.entityVerId = entityVerId;
	}
	/**
	 * 获取：病种版本
	 */
	public Long getEntityVerId() {
		return entityVerId;
	}
	/**
	 * 设置：入单人ID
	 */
	public void setInUserId(Long inUserId) {
		this.inUserId = inUserId;
	}
	/**
	 * 获取：入单人ID
	 */
	public Long getInUserId() {
		return inUserId;
	}
	/**
	 * 设置：入单科室ID
	 */
	public void setInLocId(Long inLocId) {
		this.inLocId = inLocId;
	}
	/**
	 * 获取：入单科室ID
	 */
	public Long getInLocId() {
		return inLocId;
	}
	/**
	 * 设置：入单病区ID
	 */
	public void setInWardId(Long inWardId) {
		this.inWardId = inWardId;
	}
	/**
	 * 获取：入单病区ID
	 */
	public Long getInWardId() {
		return inWardId;
	}
	/**
	 * 设置：入单日期
	 */
	public void setInDate(Date inDate) {
		this.inDate = inDate;
	}
	/**
	 * 获取：入单日期
	 */
	public Date getInDate() {
		return inDate;
	}
	/**
	 * 设置：入单时间
	 */
	public void setInTime(Date inTime) {
		this.inTime = inTime;
	}
	/**
	 * 获取：入单时间
	 */
	public Date getInTime() {
		return inTime;
	}
	/**
	 * 设置：出单人ID
	 */
	public void setOutDocId(Long outDocId) {
		this.outDocId = outDocId;
	}
	/**
	 * 获取：出单人ID
	 */
	public Long getOutDocId() {
		return outDocId;
	}
	/**
	 * 设置：出单日期
	 */
	public void setOutDate(Date outDate) {
		this.outDate = outDate;
	}
	/**
	 * 获取：出单日期
	 */
	public Date getOutDate() {
		return outDate;
	}
	/**
	 * 设置：出单时间
	 */
	public void setOutTime(Date outTime) {
		this.outTime = outTime;
	}
	/**
	 * 获取：出单时间
	 */
	public Date getOutTime() {
		return outTime;
	}
	/**
	 * 设置：当前状态
	 */
	public void setState(String state) {
		this.state = state;
	}
	/**
	 * 获取：当前状态
	 */
	public String getState() {
		return state;
	}
	/**
	 * 设置：关联路径记录
	 */
	public void setRelativeCpId(String relativeCpId) {
		this.relativeCpId = relativeCpId;
	}
	/**
	 * 获取：关联路径记录
	 */
	public String getRelativeCpId() {
		return relativeCpId;
	}

	public Integer getTestFlg() {
		return testFlg;
	}

	public void setTestFlg(Integer testFlg) {
		this.testFlg = testFlg;
	}

	public List<SdsQcentityEntity> getSdsQcentityEntities() {
		return sdsQcentityEntities;
	}

	public void setSdsQcentityEntities(List<SdsQcentityEntity> sdsQcentityEntities) {
		this.sdsQcentityEntities = sdsQcentityEntities;
	}

	public String getMrNum() {
		return mrNum;
	}

	public void setMrNum(String mrNum) {
		this.mrNum = mrNum;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Date getAdmDate() {
		return admDate;
	}

	public void setAdmDate(Date admDate) {
		this.admDate = admDate;
	}

	public Date getDishDate() {
		return dishDate;
	}

	public void setDishDate(Date dishDate) {
		this.dishDate = dishDate;
	}

	public Date getCodeDate() {
		return codeDate;
	}

	public void setCodeDate(Date codeDate) {
		this.codeDate = codeDate;
	}

	public String getGroupStatus() {
		return groupStatus;
	}

	public void setGroupStatus(String groupStatus) {
		this.groupStatus = groupStatus;
	}

	public String getFillingStatus() {
		return fillingStatus;
	}

	public void setFillingStatus(String fillingStatus) {
		this.fillingStatus = fillingStatus;
	}

	public String getReportStatus() {
		return reportStatus;
	}

	public void setReportStatus(String reportStatus) {
		this.reportStatus = reportStatus;
	}

	public String getGroupStatusDesc() {
		return groupStatusDesc;
	}

	public void setGroupStatusDesc(String groupStatusDesc) {
		this.groupStatusDesc = groupStatusDesc;
	}

	public String getFillingStatusDesc() {
		return fillingStatusDesc;
	}

	public void setFillingStatusDesc(String fillingStatusDesc) {
		this.fillingStatusDesc = fillingStatusDesc;
	}

	public String getReportStatusDesc() {
		return reportStatusDesc;
	}

	public void setReportStatusDesc(String reportStatusDesc) {
		this.reportStatusDesc = reportStatusDesc;
	}

	public String getStateDesc() {
		return stateDesc;
	}

	public void setStateDesc(String stateDesc) {
		this.stateDesc = stateDesc;
	}

	public String getAdmLocDesc() {
		return admLocDesc;
	}

	public void setAdmLocDesc(String admLocDesc) {
		this.admLocDesc = admLocDesc;
	}

	public String getAdmDoctorName() {
		return admDoctorName;
	}

	public void setAdmDoctorName(String admDoctorName) {
		this.admDoctorName = admDoctorName;
	}

	public Integer getReportDelayDays() {
		return reportDelayDays;
	}

	public void setReportDelayDays(Integer reportDelayDays) {
		this.reportDelayDays = reportDelayDays;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public Integer getECount() {
		return eCount;
	}

	public void setECount(Integer eCount) {
		this.eCount = eCount;
	}

	public Integer getACount() {
		return aCount;
	}

	public void setACount(Integer aCount) {
		this.aCount = aCount;
	}

	public Integer getNCount() {
		return nCount;
	}

	public void setNCount(Integer nCount) {
		this.nCount = nCount;
	}

	public String getIntheMoment() {
		return intheMoment;
	}

	public Date getReportDate() {
		return reportDate;
	}

	public void setReportDate(Date reportDate) {
		this.reportDate = reportDate;
	}

	public void setIntheMoment(String intheMoment) {
		this.intheMoment = intheMoment;
	}

	public Integer getReportState() {
		return reportState;
	}

	public void setReportState(Integer reportState) {
		this.reportState = reportState;
	}

	public String getReportMsg() {
		return reportMsg;
	}

	public void setReportMsg(String reportMsg) {
		this.reportMsg = reportMsg;
	}

	public String getEntityName() {
		return entityName;
	}

	public void setEntityName(String entityName) {
		this.entityName = entityName;
	}
}
